Method and devices for data transfer

ABSTRACT

A storage apparatus is proposed for facilitating wireless communication between a computer device and one or more external portable electronic devices, or between those external devices. The storage apparatus includes a wireless transceiver for entering communication with any of one the devices. When the storage apparatus is communicating with any of the devices, it can transmit to that device any data stored in its memory for transmission to that device. Furthermore, the storage apparatus can receive from that device, and transmit to its memory, data to be relayed to another of the devices.

[0001] The present invention relates to methods and apparatus for wireless transfer of data between a computer and one or more electronic devices external to the computer but which can usefully communicate data to and/or from the computer. Examples of such an electronic device include a camera, a video camera, a organiser, an MP3 player, or a PDA (personal assistant). Such external electronic devices are frequently termed “slave devices”.

[0002] There is an increasing demand for portable devices which combine high power with small size and lightness. Although modem processors can be miniaturised while retaining their ability to handle large volumes of data, the size of the portable devices limits their memory capacity. Users who require a larger memory capacity presently have to transfer the data to a separate memory medium, such as a compact flash card, a multimedia card, a memory stick, smart media, etc, having a physical connection to the portable device. Since a vast array of storage media may be used, compatibility is a serious issue. It may be particularly difficult to keep an existing computer system up-to-date and fully compatible when new portable devices are added to it.

[0003] The present invention seeks to provide new and useful methods and apparatus for transferring data between electronic devices, and in particular to facilitate communication between a computer device and one or more external portable electronic devices, and/or between those external devices.

[0004] In general terms the invention proposes that a data storage apparatus includes a wireless transceiver for selectively entering communication with a computer device or one of the external electronic devices. When the storage apparatus is communicating with any of the devices, it can transmit to that device any data stored in its memory for transmission to that device. Furthermore, the storage apparatus can receive from that device, and transmit to its memory, data to be relayed to another of the devices.

[0005] The storage apparatus may thus “bridge” the gap between the external devices and the computer device. Since the storage apparatus is substantially devoted to storage of data, it can accommodate a memory which is larger than in most other portable electronic items, for example a memory of at least 1 GB, at least 10 GB or at least 20 GB. The memory of the storage apparatus can be, for example, a magnetic disk drive or any other suitable non-volatile memory device, such as an electrically erasable programmable read only memory (EEPROM), a ferroelectric random access memory (FRAM), a magetoresistive random access memory (MRAM), or any other memory device which may become available in the future.

[0006] The wireless transceiver preferably operates by electromagnetic waves, and most preferably by RF or infra-red waves. In the former case, the transceiver may consist of an aerial and RF interface circuitry. Irrespective of the wireless waves employed, the transceiver may use any protocol presently in existence or which may become available in the future, for example it may be capable of sending and/or receiving signals in at least one of (i) IEEE802.11, (ii) Bluetooth, or (iii) irDA.

[0007] It is also possible that the storage apparatus may be capable of receiving/transmitting in multiple formats, so that it can interpret between two slave devices which use different formats.

[0008] Preferably, any external unit which includes an internal memory is arranged, upon that internal memory becoming full, or at least the amount of data passing a predefined limit, to initiate communication with the data storage apparatus, so that the data can be transferred to the data storage apparatus.

[0009] Preferably all communications carried out by the data storage apparatus include a process of establishing the identify of the other device (computer device or slave device) using an ID code received from that device and compared with list of ID codes stored internally by the data storage device.

[0010] Specifically, a first expression of the invention is a method of transferring data within a system including a computer device, a transfer apparatus and one or more external devices, each of the computer device and external devices including wireless communication means, and the transfer apparatus comprising a processor, a memory and wireless transceiver means,

[0011] the method including the steps of:

[0012] a first one of the devices transmitting a wireless signal to the transceiver means including data for transmission to a second one of the devices,

[0013] the processor storing the data in the memory, and

[0014] the processor using the transceiver means to transmit the data to the second device.

[0015] A second expression of the invention is a data transfer apparatus for a system comprising a computer device and one or more external electronic devices, each of the computer device and external devices including wireless communication means, the apparatus comprising:

[0016] wireless transceiver means for receiving and transmitting wireless signals;

[0017] a processor; and

[0018] a memory;

[0019] the processor being arranged, upon receipt by the transceiver means of a wireless signal from a first one of the devices containing data for relay to a second one of the devices, to store that signal in the memory, and, upon subsequently establishing communication with the second device, to transmit the data to the second device.

[0020] Further preferred features of the invention will now be described for the sake of example only with reference to the following figures, in which:

[0021]FIG. 1 shows a system including a master storage apparatus according to the invention, a PC and a plurality of slave devices;

[0022]FIG. 2 shows the structure of the master storage apparatus of FIG. 1;

[0023]FIG. 3 is a flow diagram of the operation of the master storage apparatus of FIG. 1 in the case that a write request signal is received from a slave device;

[0024]FIG. 4 shows the operation of the master storage apparatus of FIG. 1 transmitting data to a slave device;

[0025]FIG. 5 shows the operation of the master storage apparatus of FIG. 1 transmitting data to the PC.

[0026] Referring to FIG. 1, a system embodying the invention includes a PC 1 having an aerial 3. The system also includes a master storage apparatus 5, having an aerial 7. The system further includes a plurality of electronic (“slave”) devices 9 which are external to the computer device 1 and spatially separated from it, but which may usefully communicate data to and/or from the PC 1. Each external device 9 has an aerial 11. For simplicity only two slave devices 9 are illustrated in FIG. 1. The master storage apparatus 5 and each of the external devices 9 are portable. For example, their weight is preferably less than 1 kilogram each, and each preferably includes an internal power source such as a battery.

[0027] The PC 1 and the master storage apparatus 5 can communicate using the aerials 3, 7. Similarly, the master storage apparatus 5 and the external devices 9 can communicate using the aerials 7, 11. Both forms of communication may be using any of the communication protocols IEEE802.11, Bluetooth, irDA, etc. As described below, any of the slave devices 9 can send data selectively to the PC 1 or to any of the other slave devices 9 via the master storage apparatus 5. The PC 1 can send data to a selected one of the slave devices 9 via the master storage apparatus. All of this communication is digital, and the storage module 30 is for digital data. In addition, it is possible that the data may be sent in an encrypted form.

[0028] Note that at least one (and possibly all) of the slave devices 9 may not require two-way communication with other slave devices 9 or the PC 1. For example, in the case of a slave device 9 which is a digital camera, the data transmitted via the master storage device 5 may largely (or exclusively) be from the digital camera to the PC 1.

[0029] Turning to FIG. 2, the master storage apparatus 5 includes an aerial 7, RF interface circuitry 10, a micro-controller 20 (e.g. a microprocessor), and a storage module (memory) 30. Upon receipt of a signal by the aerial 7, it is processed by the RF interface circuitry 10, and transmitted to the micro-controller 20. The micro-controller 20 controls writing of data to the storage module 30, and reading of data from the storage module 30. It can further control the RF interface circuitry 10 to cause a signal to be transmitted using the aerial 7.

[0030] Some (usually all) of the external devices 9 include an internal memory having a capacity less than that of the storage module 30. For example, the storage capacity of each of the internal memories of the external devices 9 may be at most one tenth of that of the storage module 30. In the case that one of the external devices 9 accumulates an amount of data which threatens to surpass the capacity of the internal memory of the slave device 9, the slave device 9 emits a “write request” signal to the master storage apparatus 5, requesting that communication is established between that slave device 9 and the master storage apparatus 5 so that data can be transferred to the storage module 30.

[0031]FIG. 3 is a flow diagram of the operation of the master storage apparatus 5 in the case that the master storage apparatus 5 receives a “write request” signal from a slave device 9 indicating that it has data to be written into the storage module 30. Beginning at the top of the FIG. 3, the master storage apparatus 5 is initially in a “waiting state”, in which the RF Interface Circuitry 10 is sensitive to signals, and the master storage apparatus 5 is also sensitive to other commands, such as keystrokes on a keypad of the storage apparatus.

[0032] When the aerial 7 receives a write request signal from the external device 9, the RF Interface circuitry 10 receives it, and sends it to the micro-controller 20. The micro-controller 20 recognises the received signal as a write request signal emanating from the slave device 9, indicating that the slave device 9 wishes to write data to the storage module 30. The micro-controller 20 examines the write request signal to determine whether a slave ID contained in the signal corresponds to one of a predetermined list of ID signals. If it does not, then the master storage apparatus 5 generates an error message. For example, this may be an error message on a screen. Alternatively or additionally, it may be a radio message transmitted from the master storage apparatus 5, for example for recognition by the slave device 9 which sent the write signal. Alternatively, if the ID contained in the write request signal corresponds to one of the predetermined list of IDs, then the micro-controller 20 has established the identity of the slave device 9. In this case the micro-controller 20 creates a directory in the storage module 30 associated with the slave device 9, establishes a communication link to that slave device 9 to read data from it, and writes that data into the directory for that slave device. The master storage apparatus 5 then returns to the waiting state.

[0033] Turning to FIG. 4, the process is illustrated in which a master storage apparatus 5 sends data to a slave device 9. As in FIG. 3, the master storage apparatus 5 is initially in a waiting state. A user keys in a command to transit data to one of the slave devices 9 using a keypad on the master storage apparatus 5, and this ID is sent to the micro-controller. The micro-controller 20 instructs the RF interface to send a “read offer” signal using the aerial 7 to the indicated slave device 9, which may respond by transmitting back to the RF interface an “read accept” signal including its ID code. The micro-controller 20 compares the ID code with a predetermined list of ID signals, thereby confirming the identity of the slave device 9. If the identity of the slave device 9 cannot be determined, the master storage apparatus 5 generates an error message and returns to the waiting state. Alternatively, if the identity of the slave device 9 has been determined, then the micro-controller 20 searches the storage module 30 and extracts data stored there for transmission to that slave device 9. The micro-controller 20 then controls the RF Interface Circuitry 10 to broadcast the data to the slave device 9.

[0034] Turning to FIG. 5, a flow diagram of the operation of the master storage apparatus 5 is shown in the case of writing data to the PC 1. As in FIG. 3 and FIG. 4, the initial state of the master storage apparatus 5, at the top of FIG. 5 is a waiting state. Upon a command being keyed into the master storage device 5, the micro-controller 20 instructs the RF interface 10 to send a “read offer” signal to the PC 1, indicating that the master storage device 5 wishes to transmit data to the PC 1. If the PC 1 is able to accept the data, the PC 1 generates a “read accept” signal including the ID of the PC. The signal is received by the aerial 7 and sent by the RF Interface Circuitry 10 to the micro-controller 20. The micro-controller 20 compares the ID with a copy in its own memory. If the comparison is incorrect, the master storage apparatus 5 generates an error message, such as by controlling the RF Interface Circuitry 10 to broadcast an error message to the PC 1. Alternatively, if the ID of the PC 5 is recognised, the micro-controller 10 accesses the storage module 30, and controls the RF Interface Circuitry 10 to broadcast all of the data in the storage module 30 which is to be relayed to the PC 1. The PC 1 can read directory on master storage device 5 and select some or all of the files from the device 5.

[0035] The process of writing data from the PC 1 to the master storage device 5 is broadly similar to that described above in relation to FIG. 3. The PC 1 sends a write request signal to the master storage device 5 containing an ID code for the PC 1. The master storage device 5 verifies the identity of the PC 1 by comparing the code with an internal record of the ID code for the PC 1 (if the two do not match an error message is sent). The master storage device 5 then enters communication with the PC 1 in which data is sent to the master storage device 5 and transmitted to the storage module 30.

[0036] Although the invention has been explained above with reference to only a single embodiment, many variations are possible within the scope of the invention as will be clear to a skilled person.

[0037] For example, the master storage apparatus 5 may be capable of communicating in multiple communication protocols (standards), according to which protocol(s) are acceptable to the device with which it is communicating at any moment. For example, if the PC 1 requires communication in a first protocol, one or more of the slave devices 9 require communication in a second protocol, and one or more other of the slave devices 9 require communication in a third protocol, the master storage apparatus 5 may be capable of communication in any of these protocols. As described above, the process of establishing communication with the PC 1 or any of the slave devices 9 includes establishing the identity of the PC 1 or that slave device 9, and the master storage apparatus may use this identity to determine the protocol which should be used. For example, the master storage apparatus 5 may include a look-up table of communication protocols appropriate for each of its possible communication partners, and, having established the identity of the PC 1 or slave device 9 with which it is presently communicating, the master storage apparatus may access the look-up table to determine the corresponding communication protocol. That communication protocol may then be used to control the operation of the RF Interface circuitry 10.

[0038] Furthermore, although the mode of wireless communication used in the embodiment is radio communication, the communication may alternatively be conducted by any other form of communication which does not employ wires (or other cables), such as infra-red signalling or microwave signalling. It may even employ ultrasound signalling. In the case that the PC and the external devices do not all employ the same wireless communication mode (e.g. the PC may use RF communication, while one or more of the external devices may use infra-red signals, and one of more others use microwave signalling), the master storage apparatus of the invention may be provided with multiple transceiver means, each for a respective wireless communication mode. 

1. A method of transferring data within a system including a computer device, a transfer apparatus and one or more external devices, each of the computer device and external devices including wireless communication means, and the transfer apparatus comprising a processor, a memory and wireless transceiver means, the method including the steps of: a first one of the devices transmitting a wireless signal to the transceiver means including data for transmission to a second one of the devices, the processor storing the data in the memory, and the processor using the transceiver means to transmit the data to the second device.
 2. A method according to claim 1 in which the first device is one of the external devices and the second device is the computing device.
 3. A method according to claim 1 in which the first device is the computing device and the second device is one of the external devices.
 4. A method according to claim 1 in which the first device is a first said external device and the second device is a second said external device.
 5. A method according to claim 1 in which the establishment of communication between the data transfer apparatus and the first device includes transmission by the first device to the data transfer apparatus of an ID code using which the apparatus verifies the identity of the first device.
 6. A method according to claim 1 in which the establishment of communication between the data transfer apparatus and the second device includes transmission by the second device to the data transfer apparatus of an ID code using which the apparatus verifies the identify of the second device.
 7. A method according to claim 5 in which the first device is one of the external devices and the data is stored in a location in the memory which depends on the identity of the first device.
 8. A method according to 2, in which the first device establishes communication with the data transfer apparatus upon determining that an internal memory of the first device contains a predetermined amount of data.
 9. A data transfer apparatus for a system comprising a computer device and one or more external electronic devices, each of the computer device and external devices including wireless communication means, the apparatus comprising: wireless transceiver means for receiving and transmitting wireless signals; a processor; and a memory; the processor being arranged, upon receipt by the transceiver means of a wireless signal from a first one of the devices containing data for relay to a second one of the devices, to store that signal in the memory, and, upon subsequently establishing communication with the second device, to transmit the data to the second device.
 10. A system comprising a computer device having wireless communication means, one or more external devices having respective wireless communication means, and a data transfer apparatus according to claim 9, the wireless communication means of the computer device and of the external devices being for communication with the transceiver means of the apparatus.
 11. A system according to claim 10 in which at least one of the external devices includes an internal memory and is arranged to initiate communication with the data transfer apparatus to transmit the signal to the data transfer apparatus, upon the amount of data stored in the internal memory reaching or approaching the capacity of the internal memory.
 12. A method according to claim 2 in which the establishment of communication between the data transfer apparatus and the first device includes transmission by the first device to the data transfer apparatus of an ID code using which the apparatus verifies the identity of the first device.
 13. A method according to claim 3 in which the establishment of communication between the data transfer apparatus and the first device includes transmission by the first device to the data transfer apparatus of an ID code using which the apparatus verifies the identity of the first device.
 14. A method according to claim 4 in which the establishment of communication between the data transfer apparatus and the first device includes transmission by the first device to the data transfer apparatus of an ID code using which the apparatus verifies the identity of the first device.
 15. A method according to claim 2 in which the establishment of communication between the data transfer apparatus and the second device includes transmission by the second device to the data transfer apparatus of an ID code using which the apparatus verifies the identity of the second device.
 16. A method according to claim 3 in which the establishment of communication between the data transfer apparatus and the second device includes transmission by the second device to the data transfer apparatus of an ID code using which the apparatus verifies the identity of the second device.
 17. A method according to claim 4 in which the establishment of communication between the data transfer apparatus and the second device includes transmission by the second device to the data transfer apparatus of an ID code using which the apparatus verifies the identity of the second device.
 18. A method according to claim 5 in which the establishment of communication between the data transfer apparatus and the second device includes transmission by the second device to the data transfer apparatus of an ID code using which the apparatus verifies the identity of the second device.
 19. A method according to claim 12 in which the establishment of communication between the data transfer apparatus and the second device includes transmission by the second device to the data transfer apparatus of an ID code using which the apparatus verifies the identity of the second device.
 20. A method according to claim 13 in which the establishment of communication between the data transfer apparatus and the second device includes transmission by the second device to the data transfer apparatus of an ID code using which the apparatus verifies the identity of the second device.
 21. A method according to claim 14 in which the establishment of communication between the data transfer apparatus and the second device includes transmission by the second device to the data transfer apparatus of an ID code using which the apparatus verifies the identity of the second device.
 22. A method according to claim 4 in which the first device establishes communication with the data transfer apparatus upon determining that an internal memory of the first device contains a predetermined amount of data.
 23. A method according to claim 7 in which the first device establishes communication with the data transfer apparatus upon determining that an internal memory of the first device contains a predetermined amount of data. 